a11y: Update the "pressed" state on toggle buttons
authorEmmanuele Bassi <ebassi@gnome.org>
Mon, 13 Jul 2020 15:10:36 +0000 (16:10 +0100)
committerEmmanuele Bassi <ebassi@gnome.org>
Sun, 26 Jul 2020 19:31:15 +0000 (20:31 +0100)
gtk/gtktogglebutton.c

index 1968272dcfb870eff5dc8bc1ba7aaa1af6ef4160..6a31c8f4d95bac314a2a39605967ebc7c1c36594 100644 (file)
@@ -26,7 +26,9 @@
 
 #include "gtktogglebutton.h"
 
+#include "gtkaccessible.h"
 #include "gtkbuttonprivate.h"
+#include "gtkenums.h"
 #include "gtkintl.h"
 #include "gtklabel.h"
 #include "gtkmain.h"
@@ -311,6 +313,10 @@ gtk_toggle_button_set_active (GtkToggleButton *toggle_button,
   else
     gtk_widget_unset_state_flags (GTK_WIDGET (toggle_button), GTK_STATE_FLAG_CHECKED);
 
+  gtk_accessible_update_state (GTK_ACCESSIBLE (toggle_button),
+                               GTK_ACCESSIBLE_STATE_PRESSED, is_active,
+                               -1);
+
   gtk_toggle_button_toggled (toggle_button);
 
   g_object_notify_by_pspec (G_OBJECT (toggle_button), toggle_button_props[PROP_ACTIVE]);